Remove too-tricky make_lisp_symbol optimization
authorStefan Monnier <monnier@iro.umontreal.ca>
Wed, 24 Jan 2024 07:35:22 +0000 (23:35 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 24 Jan 2024 07:36:45 +0000 (23:36 -0800)
commit802821b81ac5ad0dee7f26caa519326251b262c1
treee74f815c71a31a5515891033af8ba75b4627e954
parent33b8d5b6c5a22bab069cdac4bddda932b3d18b13
Remove too-tricky make_lisp_symbol optimization

Simplify optimization for make_lisp_symbol, so that
it’s less tricky and works well enough for gcc -Og or -O2.
* src/lisp.h (lisp_h_builtin_lisp_symbol): Remove.
(builtin_lisp_symbol) [DEFINE_KEY_OPS_AS_MACROS]: Remove.
(make_lisp_symbol_nodebug): New internal static function,
which is like the old make_lisp_symbol but without the eassert.
(make_lisp_symbol, builtin_lisp_symbol): Use it, so that
make_lisp_symbol has the eassert but builtin_lisp_symbol doesn’t.
Co-authored-by: Paul Eggert <eggert@cs.ucla.edu>
src/lisp.h